package com.zou.study.springboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.AutoConfigurationExcludeFilter;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.context.TypeExcludeFilter;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.ComponentScan.Filter;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.FilterType;
import org.springframework.stereotype.Indexed;

/**
 * @author _blank
 * @since 20210813120003
 */
//@SpringBootApplication
// 等价与下面

//@SpringBootConfiguration
@Configuration
@Indexed

@EnableAutoConfiguration
//@AutoConfigurationPackage
//@Import(AutoConfigurationImportSelector.class)

@ComponentScan(excludeFilters = { //
        @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class), //
        @Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class)//
})
public class MySpringBootApplication {

    public static void main(String[] args) throws Exception {
        SpringApplication.run(MySpringBootApplication.class, args);
    }

}
